package com.hx.base.zzw;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;

/**
 * 描述:
 * 客户端
 *
 * @author WeiGu
 * @create 2019-08-15 18:57
 */
public class TCPClient {
    public static void main(String[] args) throws IOException {
        //创建客户端套接字对象
        Socket client = new Socket("127.0.0.1", 12345);
        //获取输出流,写图片
        OutputStream os = client.getOutputStream();
        //创建自己的输入流,读取图片
        FileInputStream fis = new FileInputStream("D:\\d.jpg");
        byte[] bytes = new byte[2048];
        int length;
        while ((length = fis.read(bytes)) != -1) {
            //获取到的输出流写图片到服务器
            os.write(bytes, 0, length);
        }
        /**
         * 注意:是客户端往服务端发送信息,此时服务端以为客户端没有传完,一直在等待
         * 所以要关闭客户端的输出
         */
        client.shutdownOutput();

        //获取输入流,接收服务器传送回来的信息
        InputStream is = client.getInputStream();
        length = is.read(bytes);
        System.out.println(new String(bytes, 0, length));

        fis.close();
        client.close();

    }
}
